package com.wkbb.sports.service;

import com.github.pagehelper.PageInfo;
import com.wkbb.common.base.BaseService;
import com.wkbb.common.dto.ResultDTO;
import com.wkbb.common.dto.basic.StudentInfoDto;
import com.wkbb.common.dto.basic.UserDto;
import com.wkbb.sports.dto.LatelStuSportDto;
import com.wkbb.sports.dto.StuSportStatisticsDto;
import com.wkbb.sports.model.HlifeSportLevel;
import com.wkbb.sports.model.HlifeStudentPractice;
import com.wkbb.sports.model.HlifeStudentPracticeProject;

import java.util.List;
import java.util.Map;


/**
 * @author lbh
 * @date 2021年03月29日 17:58:34
 * @description:
 */
public interface PracticeService extends BaseService<HlifeStudentPractice> {
    /**
     * 学生提交练习
     * @param userDto
     * @return
     */
    ResultDTO<HlifeStudentPractice> insertHlifeStudentPractice(HlifeStudentPractice hlifeWorkStudentHistory, UserDto userDto) throws Exception ;

    /**
     * 某一个学生的练习列表或某一个练习详情
     * @param orgId
     * @param studentId
     * @return
     */
    public ResultDTO<PageInfo<HlifeStudentPractice>> getStudentPracticeListByStudentId(Integer orgId, Integer studentId, Integer practiceId,int pageNo, int pageSize);

    /**
     * 获取项目时长
     * @param studentId
     * @return
     */
    public ResultDTO<HlifeStudentPracticeProject>  getPracticeProject(String studentId,UserDto userDto );


    ResultDTO<StuSportStatisticsDto> getStuSportStatistics(Long studentId, Byte projectKind, String date);

    ResultDTO<StuSportStatisticsDto> getStuHomeSportStatistics(Long studentId, Byte projectKind);

    List<HlifeSportLevel> getSportLevelList(Map<String, Object> map);

    ResultDTO<List<StudentInfoDto>>  getStudentInfoByFamily(Long id);

    ResultDTO<LatelStuSportDto> getLatelyStuSport(Map<String, Object> params);
}












